Data centers often operate hosting components, such as data servers, for multiple tenants. The push for elastic provisioning of resources required by cloud computing systems and the general push toward virtualization for efficient use of resources often require that multiple tenants be hosted on a single hosting component. For security reasons, data centers use various techniques to isolate network traffic to ensure that one tenant does not have access to another tenant's data. Data centers with layer 2, data link layer, routing systems often use virtual local area networks (VLANs) to isolate network traffic. The VLAN solution may be problematic for large data centers because current data packet standards only allow 4094 unique VLANs to operate in a data center system. Data centers' use of layer 3, network layer, routing systems may also be problematic as multiple tenants may share the same set of layer 3 addresses within their networks, requiring the data center to employ other forms of isolation.
As neither layer 2 nor layer 3 systems provide a completely adequate solution for a large cloud computing environment, various hybrid layer routing schemes have been proposed. These schemes are unworkable for various reasons. One example of such a hybrid layer routing scheme is the recently proposed virtual extensible local area network (VXLAN), which attempts to provide VLAN functionality over a hybrid layer 2 layer 3 network. Components on a VXLAN may send a layer 2 VLAN packet to a VXLAN tunnel endpoint (VTEP). The VTEP may encapsulate the VLAN packet in a VXLAN packet and transmit the resulting VXLAN packet over a layer 3 network. A VTEP in the destination network may receive the VXLAN packet, decapsulate the packet to obtain the original VLAN packet, and forward the VLAN packet over the layer 2 network. This system allows VLAN components in a layer 2 network to reach layer 2 components in a different layer 2 network.
Despite the potential benefits of the VXLAN system, the currently proposed variations are unworkable. One proposed VXLAN standard would require all data traffic in a particular network to pass through a single VXLAN server. A second proposed VXLAN standard would require all data traffic to pass through a single virtual private network (VPN) gateway. In either case, the proposed systems would not function under a heavy data traffic load due to bottlenecks in the data traffic flow. Additionally, the proposed solutions are not adequate for virtual machine (VM) mobility as the VPN gateway or VXLAN server must be reconfigured each time a VM moves from one host machine to another in order to find the VM in the new location. This may be a problem as the elastic provisioning required by cloud computing encourages VM mobility.